35
38
40
0
5
0
1
5451
55
51
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5452
55
52
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5453
55
53
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5454
55
54
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5455
55
55
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5456
55
56
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5551
56
51
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5552
56
52
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5553
56
53
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5554
56
54
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5555
56
55
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5556
56
56
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5557
56
57
6
1
4
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5558
56
58
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5559
56
59
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5651
57
51
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5652
57
52
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5653
57
53
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5654
57
54
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5655
57
55
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5656
57
56
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5657
57
57
6
1
4
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5658
57
58
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5659
57
59
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5751
58
51
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5752
58
52
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5753
58
53
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5754
58
54
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5755
58
55
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5756
58
56
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5757
58
57
6
1
4
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5758
58
58
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5759
58
59
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5851
59
51
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5852
59
52
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5853
59
53
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5854
59
54
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5855
59
55
6
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5856
59
56
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5857
59
57
6
1
4
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5858
59
58
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5859
59
59
6
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
5952
60
52
6
1
0
8
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
1
0
1
5953
60
53
6
1
0
8
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
5954
60
54
6
1
0
8
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
5955
60
55
6
1
0
8
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
5956
60
56
6
1
0
8
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
1
0
1
5958
60
58
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
6052
61
52
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6053
61
53
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6054
61
54
6
1
2
10
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6055
61
55
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6056
61
56
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6152
62
52
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6153
62
53
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6154
62
54
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6155
62
55
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6156
62
56
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6253
63
53
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6254
63
54
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6255
63
55
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6256
63
56
6
1
0
8
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
6354
64
54
0
0
0
0
0
0
0
1
0
0
2
0
0
0
0
0
0
0
0
0
1
0
1
6358
64
58
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
500
0
5
1
2
0
1
